//视频示例采用的是豆瓣开放API，已经挂了。
// 所以采用开源社区http://www.apiopen.top/api.html
//该例的测试案例采用 https://api.apiopen.top/videoHomeTab
const https = require('https'); //默认443端口

//postman的https request的options对象，把其中的hostname数组替换成字符串就行
// var options = {
//     method: "GET",
//     hostname:"api.apiopen.top",
//     timeout: 1500,
//     path: [
//         "/getAllUrl"
//     ],
//     headers: {
//         "User-Agent": "PostmanRuntime/7.18.0",
//         "Accept": "*/*",
//         "Cache-Control": "no-cache",
//         "Postman-Token": "bdeba962-45c2-4cde-a5be-f0ea30af7a6e,dfdea012-c9f3-441c-a8b5-f702f5f22a85",
//         "Host": "api.apiopen.top",
//         "Accept-Encoding": "gzip, deflate",
//         "Connection": "keep-alive",
//         "cache-control": "no-cache"
//     }
// };

//options 可以是对象、字符串、或 URL 对象。 如果 options 是一个字符串, 则自动使用 new URL() 解析它。 如果它是一个 URL 对象，则将自动转换为普通的 options 对象。
// 平台接口预览
// https://api.apiopen.top/getAllUrl
// [
//     "/getCouPonInfo",
//     "/CouPonSearch",
//     "/developerRegister",
//     "/developerLogin",
//     "/developerUpdateKey",
//     "/getFeedback",
//     "/deleteFeedback",
//     "/EmailSearch",
//     "/error",
//     "/getWangYiNews",
//     "/deleteUser",
//     "/updateUser",
//     "/login",
//     "/register",
//     "/getTencentNews",
//     "/userFeedback",
//     "/loginUser",
//     "/registerUser",
//     "/apiJson",
//     "/searchMusic",
//     "/musicBroadcasting",
//     "/musicBroadcastingDetails",
//     "/musicDetails",
//     "/musicRankings",
//     "/musicRankingsDetails",
//     "/singlePoetry",
//     "/searchAuthors",
//     "/searchPoetry",
//     "/likePoetry",
//     "/recommendPoetry",
//     "/getSongPoetry",
//     "/getTangPoetry",
//     "/poetryFull",
//     "/poetryFullDetails",
//     "/test",
//     "/getSingleJoke",
//     "/getJokeUserInfo",
//     "/getJoke",
//     "/getJokeComment",
//     "/getImages",
//     "/todayVideo",
//     "/videoHomeTab",
//     "/videoRecommend",
//     "/videoCategory",
//     "/videoCategoryDetails",
//     "/videoDetails",
//     "/json",
//     "/getAllUrl"
// ]

//段子详情
//https://api.apiopen.top/getSingleJoke?sid=28654780{
// {
//     "code": 200,
//     "message": "成功!",
//     "result": {
//     "sid": "28654780",
//         "text": "这难道是传说中的脸刹？",
//         "type": "video",
//         "thumbnail": "http://wimg.spriteapp.cn/picture/2018/0927/5bacc729ae94b__b.jpg",
//         "video": "http://wvideo.spriteapp.cn/video/2018/0927/5bacc729be874_wpd.mp4",
//         "images": null,
//         "up": "99",
//         "down": "7",
//         "forward": "3",
//         "comment": "9",
//         "uid": "12745266",
//         "name": "赵菓菓",
//         "header": "http://wimg.spriteapp.cn/profile/large/2018/08/14/5b721ea4242da_mini.jpg",
//         "top_comments_content": null,
//         "top_comments_voiceuri": null,
//         "top_comments_uid": null,
//         "top_comments_name": null,
//         "top_comments_header": null,
//         "passtime": "2018-09-30 02:55:02"
// }
// }

//第0页的电影
// http://baobab.kaiyanapp.com/api/v5/index/tab/allRec?page=0
//电影目录
// https://api.apiopen.top/videoHomeTab

var options = {
    //protocol:'https',  //协议默认采用https协议
    hostname:'api.apiopen.top',
    path:'/videoHomeTab',
    // port:443, //https默认端口为443，port参数可加可不加
    method:'GET'
    //dhparam：查询参数
    // dhparam:{
    //     page : 0
    // }
};

var responseData = '';

var request = https.request(options,function (res) {

    //返回的response对象
    // console.log(res);
    //返回的状态码
    // console.log(res.statusCode);
    //返回的response对象头
    // console.log(res.headers);
    //返回的response对象的输出结果
    //{ date: 'Sat, 19 Oct 2019 06:11:53 GMT',
    // 'content-type': 'application/json;charset=utf-8',
    //     'transfer-encoding': 'chunked',
    //     connection: 'close' }
    res.setEncoding('utf8');

    res.on('data',(chunk) =>{
        //未设置编码，不会进行转换，那么会是Buffer的
        //其中一段是
        // <Buffer 31 30 30 22 2c 22 62 6c 75 72 72 65 64 22 3a 22 68 74 74 70 3a 2f 2f 69 6d 67 2e 6b 61 69 79 61 6e 61 70 70 2e 63 6f 6d 2f 66 64 62 65 62 36 66 38 64 ... >
        responseData +=chunk;
    })

    res.on('end',()=>{
        var jsonObj =JSON.parse(responseData);
        // console.log(jsonObj)
        var arr =jsonObj.result;
        arr.forEach((item) =>{
            console.log(item.name);
        });
        // 发现
        // 推荐
        // 日报
        // 社区
        // 广告
        // 生活
        // 动画
        // 搞笑
        // 开胃
        // 创意
        // 运动
        // 音乐
        // 萌宠
        // 剧情
        // 科技
        // 旅行
        // 影视
        // 记录
        // 游戏
        // 综艺
        // 时尚
        // 集锦
    })

    // 返回的response的body
    // var chunks = [];
    //
    // res.on("data", function (chunk) {
    //     chunks.push(chunk);
    // });
    //
    // res.on("end", function () {
    //     var body = Buffer.concat(chunks);
    //     console.log(JSON.parse(body.toString()));
    // });

});

//返回的res的输出结果
// IncomingMessage {
//     _readableState:
//         ReadableState {
//         objectMode: false,
//             highWaterMark: 16384,
//             buffer: BufferList { head: null, tail: null, length: 0 },
//         length: 0,
//             pipes: null,
//             pipesCount: 0,
//             flowing: null,
//             ended: false,
//             endEmitted: false,
//             reading: false,
//             sync: true,
//             needReadable: false,
//             emittedReadable: false,
//             readableListening: false,
//             resumeScheduled: false,
//             destroyed: false,
//             defaultEncoding: 'utf8',
//             awaitDrain: 0,
//             readingMore: true,
//             decoder: null,
//             encoding: null },
//     readable: true,
//         domain: null,
//         _events: { end: [Function: responseOnEnd] },
//     _eventsCount: 1,
//         _maxListeners: undefined,
//         socket:
//     TLSSocket {
//         _tlsOptions:
//         { pipe: false,
//             secureContext: [Object],
//             isServer: false,
//             requestCert: true,
//             rejectUnauthorized: true,
//             session: undefined,
//             NPNProtocols: undefined,
//             ALPNProtocols: undefined,
//             requestOCSP: undefined },
//         _secureEstablished: true,
//             _securePending: false,
//             _newSessionPending: false,
//             _controlReleased: true,
//             _SNICallback: null,
//             servername: null,
//             npnProtocol: undefined,
//             alpnProtocol: false,
//             authorized: true,
//             authorizationError: null,
//             encrypted: true,
//             _events:
//         { close: [Array],
//             end: [Array],
//             finish: [Function: onSocketFinish],
//             _socketEnd: [Function: onSocketEnd],
//             secure: [Function],
//                 free: [Function: onFree],
//             agentRemove: [Function: onRemove],
//             drain: [Function: ondrain],
//             error: [Function: socketErrorListener],
//             data: [Function: socketOnData],
//             timeout: [Object] },
//         _eventsCount: 11,
//             connecting: false,
//             _hadError: false,
//             _handle:
//         TLSWrap {
//             _parent: [Object],
//                 _parentWrap: undefined,
//                 _secureContext: [Object],
//                 reading: true,
//                 owner: [Circular],
//                 onread: [Function: onread],
//             writeQueueSize: 0,
//                 onhandshakestart: [Function],
//                 onhandshakedone: [Function],
//                 onocspresponse: [Function],
//                 onerror: [Function] },
//         _parent: null,
//             _host: 'api.apiopen.top',
//             _readableState:
//         ReadableState {
//             objectMode: false,
//                 highWaterMark: 16384,
//                 buffer: [Object],
//                 length: 0,
//                 pipes: null,
//                 pipesCount: 0,
//                 flowing: true,
//                 ended: false,
//                 endEmitted: false,
//                 reading: false,
//                 sync: false,
//                 needReadable: true,
//                 emittedReadable: false,
//                 readableListening: false,
//                 resumeScheduled: false,
//                 destroyed: false,
//                 defaultEncoding: 'utf8',
//                 awaitDrain: 0,
//                 readingMore: false,
//                 decoder: null,
//                 encoding: null },
//         readable: true,
//             domain: null,
//             _maxListeners: undefined,
//             _writableState:
//         WritableState {
//             objectMode: false,
//                 highWaterMark: 16384,
//                 finalCalled: false,
//                 needDrain: false,
//                 ending: false,
//                 ended: false,
//                 finished: false,
//                 destroyed: false,
//                 decodeStrings: false,
//                 defaultEncoding: 'utf8',
//                 length: 0,
//                 writing: false,
//                 corked: 0,
//                 sync: false,
//                 bufferProcessing: false,
//                 onwrite: [Function: bound onwrite],
//             writecb: null,
//                 writelen: 0,
//                 bufferedRequest: null,
//                 lastBufferedRequest: null,
//                 pendingcb: 0,
//                 prefinished: false,
//                 errorEmitted: false,
//                 bufferedRequestCount: 0,
//                 corkedRequestsFree: [Object] },
//         writable: true,
//             allowHalfOpen: false,
//             _bytesDispatched: 269,
//             _sockname: null,
//             _pendingData: null,
//             _pendingEncoding: '',
//             server: undefined,
//             _server: null,
//             ssl:
//         TLSWrap {
//             _parent: [Object],
//                 _parentWrap: undefined,
//                 _secureContext: [Object],
//                 reading: true,
//                 owner: [Circular],
//                 onread: [Function: onread],
//             writeQueueSize: 0,
//                 onhandshakestart: [Function],
//                 onhandshakedone: [Function],
//                 onocspresponse: [Function],
//                 onerror: [Function] },
//         _requestCert: true,
//             _rejectUnauthorized: true,
//             parser:
//         HTTPParser {
//             '0': [Function: parserOnHeaders],
//             '1': [Function: parserOnHeadersComplete],
//             '2': [Function: parserOnBody],
//             '3': [Function: parserOnMessageComplete],
//             '4': null,
//                 _headers: [],
//                 _url: '',
//                 _consumed: false,
//                 socket: [Circular],
//                 incoming: [Circular],
//                 outgoing: [Object],
//                 maxHeaderPairs: 2000,
//                 onIncoming: [Function: parserOnIncomingClient] },
//         _httpMessage:
//             ClientRequest {
//             domain: null,
//                 _events: [Object],
//                 _eventsCount: 3,
//                 _maxListeners: undefined,
//                 output: [],
//                 outputEncodings: [],
//                 outputCallbacks: [],
//                 outputSize: 0,
//                 writable: true,
//                 _last: true,
//                 upgrading: false,
//                 chunkedEncoding: false,
//                 shouldKeepAlive: true,
//                 useChunkedEncodingByDefault: false,
//                 sendDate: false,
//                 _removedConnection: false,
//                 _removedContLen: false,
//                 _removedTE: false,
//                 _contentLength: 0,
//                 _hasBody: true,
//                 _trailer: '',
//                 finished: true,
//                 _headerSent: true,
//                 socket: [Circular],
//                 connection: [Circular],
//                 _header: 'GET /getAllUrl HTTP/1.1\r\nUser-Agent: PostmanRuntime/7.18.0\r
// \nAccept: */*\r\ncache-control: no-cache\r\nPostman-Token: bdeba962-45c2-4cde-a5
//              be-f0ea30af7a6e,dfdea012-c9f3-441c-a8b5-f702f5f22a85\r\nHost: api.apiopen.top\r\
//              nAccept-Encoding: gzip, deflate\r\nConnection: keep-alive\r\n\r\n',
//              _onPendingData: [Function: noopPendingOutput],
//              agent: [Object],
//              socketPath: undefined,
//              timeout: 1500,
//              method: 'GET',
//              path: [Array],
//              _ended: false,
//              res: [Circular],
//              aborted: undefined,
//              timeoutCb: null,
//              upgradeOrConnect: false,
//              parser: [Object],
//              maxHeadersCount: null,
//              [Symbol(outHeadersKey)]: [Object] },
//              read: [Function],
//              _consuming: true,
//              [Symbol(asyncId)]: 7,
//              [Symbol(bytesRead)]: 0 },
//              connection:
//              TLSSocket {
//              _tlsOptions:
//              { pipe: false,
//              secureContext: [Object],
//              isServer: false,
//              requestCert: true,
//              rejectUnauthorized: true,
//              session: undefined,
//              NPNProtocols: undefined,
//              ALPNProtocols: undefined,
//              requestOCSP: undefined },
//              _secureEstablished: true,
//              _securePending: false,
//              _newSessionPending: false,
//              _controlReleased: true,
//              _SNICallback: null,
//              servername: null,
//              npnProtocol: undefined,
//              alpnProtocol: false,
//              authorized: true,
//              authorizationError: null,
//              encrypted: true,
//              _events:
//              { close: [Array],
//              end: [Array],
//              finish: [Function: onSocketFinish],
//              _socketEnd: [Function: onSocketEnd],
//              secure: [Function],
//              free: [Function: onFree],
//              agentRemove: [Function: onRemove],
//              drain: [Function: ondrain],
//              error: [Function: socketErrorListener],
//              data: [Function: socketOnData],
//              timeout: [Object] },
//              _eventsCount: 11,
//              connecting: false,
//              _hadError: false,
//              _handle:
//              TLSWrap {
//              _parent: [Object],
//              _parentWrap: undefined,
//              _secureContext: [Object],
//              reading: true,
//              owner: [Circular],
//              onread: [Function: onread],
//              writeQueueSize: 0,
//              onhandshakestart: [Function],
//              onhandshakedone: [Function],
//              onocspresponse: [Function],
//              onerror: [Function] },
//              _parent: null,
//              _host: 'api.apiopen.top',
//              _readableState:
//              ReadableState {
//              objectMode: false,
//              highWaterMark: 16384,
//              buffer: [Object],
//              length: 0,
//              pipes: null,
//              pipesCount: 0,
//              flowing: true,
//              ended: false,
//              endEmitted: false,
//              reading: false,
//              sync: false,
//              needReadable: true,
//              emittedReadable: false,
//              readableListening: false,
//              resumeScheduled: false,
//              destroyed: false,
//              defaultEncoding: 'utf8',
//              awaitDrain: 0,
//              readingMore: false,
//              decoder: null,
//              encoding: null },
//              readable: true,
//              domain: null,
//              _maxListeners: undefined,
//              _writableState:
//              WritableState {
//              objectMode: false,
//              highWaterMark: 16384,
//              finalCalled: false,
//              needDrain: false,
//              ending: false,
//              ended: false,
//              finished: false,
//              destroyed: false,
//              decodeStrings: false,
//              defaultEncoding: 'utf8',
//              length: 0,
//              writing: false,
//              corked: 0,
//              sync: false,
//              bufferProcessing: false,
//              onwrite: [Function: bound onwrite],
//              writecb: null,
//              writelen: 0,
//              bufferedRequest: null,
//              lastBufferedRequest: null,
//              pendingcb: 0,
//              prefinished: false,
//              errorEmitted: false,
//              bufferedRequestCount: 0,
//              corkedRequestsFree: [Object] },
//              writable: true,
//              allowHalfOpen: false,
//              _bytesDispatched: 269,
//              _sockname: null,
//              _pendingData: null,
//              _pendingEncoding: '',
//              server: undefined,
//              _server: null,
//              ssl:
//              TLSWrap {
//              _parent: [Object],
//              _parentWrap: undefined,
//              _secureContext: [Object],
//              reading: true,
//              owner: [Circular],
//              onread: [Function: onread],
//              writeQueueSize: 0,
//              onhandshakestart: [Function],
//              onhandshakedone: [Function],
//              onocspresponse: [Function],
//              onerror: [Function] },
//              _requestCert: true,
//              _rejectUnauthorized: true,
//              parser:
//              HTTPParser {
//              '0': [Function: parserOnHeaders],
//              '1': [Function: parserOnHeadersComplete],
//              '2': [Function: parserOnBody],
//              '3': [Function: parserOnMessageComplete],
//              '4': null,
//              _headers: [],
//              _url: '',
//              _consumed: false,
//              socket: [Circular],
//              incoming: [Circular],
//              outgoing: [Object],
//              maxHeaderPairs: 2000,
//              onIncoming: [Function: parserOnIncomingClient] },
//              _httpMessage:
//              ClientRequest {
//              domain: null,
//              _events: [Object],
//              _eventsCount: 3,
//              _maxListeners: undefined,
//              output: [],
//              outputEncodings: [],
//              outputCallbacks: [],
//              outputSize: 0,
//              writable: true,
//              _last: true,
//              upgrading: false,
//              chunkedEncoding: false,
//              shouldKeepAlive: true,
//              useChunkedEncodingByDefault: false,
//              sendDate: false,
//              _removedConnection: false,
//              _removedContLen: false,
//              _removedTE: false,
//              _contentLength: 0,
//              _hasBody: true,
//              _trailer: '',
//              finished: true,
//              _headerSent: true,
//              socket: [Circular],
//              connection: [Circular],
//              _header: 'GET /getAllUrl HTTP/1.1\r\nUser-Agent: PostmanRuntime/7.18.0\r
//              \nAccept: */*\r\ncache-control: no-cache\r\nPostman-Token: bdeba962-45c2-4cde-a5
//             be-f0ea30af7a6e,dfdea012-c9f3-441c-a8b5-f702f5f22a85\r\nHost: api.apiopen.top\r\
// nAccept-Encoding: gzip, deflate\r\nConnection: keep-alive\r\n\r\n',
//             _onPendingData: [Function: noopPendingOutput],
//             agent: [Object],
//                 socketPath: undefined,
//                 timeout: 1500,
//                 method: 'GET',
//                 path: [Array],
//                 _ended: false,
//                 res: [Circular],
//                 aborted: undefined,
//                 timeoutCb: null,
//                 upgradeOrConnect: false,
//                 parser: [Object],
//                 maxHeadersCount: null,
//                 [Symbol(outHeadersKey)]: [Object] },
//         read: [Function],
//             _consuming: true,
//             [Symbol(asyncId)]: 7,
//             [Symbol(bytesRead)]: 0 },
//     httpVersionMajor: 1,
//         httpVersionMinor: 1,
//         httpVersion: '1.1',
//         complete: false,
//         headers:
//     { 'cache-control': 'private',
//         expires: 'Thu, 01 Jan 1970 00:00:00 GMT',
//         'access-control-allow-origin': '*',
//         'access-control-allow-methods': 'POST, GET, OPTIONS, DELETE',
//         'access-control-max-age': '3600',
//         'access-control-allow-headers': 'Content-Type, x-requested-with, X-Custom-H
//         eader, Authorization',
//         'content-type': 'application/json;charset=UTF-8',
//         'transfer-encoding': 'chunked',
//         date: 'Sat, 19 Oct 2019 04:52:32 GMT' },
//     rawHeaders:
//         [ 'Cache-Control',
//             'private',
//             'Expires',
//             'Thu, 01 Jan 1970 00:00:00 GMT',
//             'Access-Control-Allow-Origin',
//             '*',
//             'Access-Control-Allow-Methods',
//             'POST, GET, OPTIONS, DELETE',
//             'Access-Control-Max-Age',
//             '3600',
//             'Access-Control-Allow-Headers',
//             'Content-Type, x-requested-with, X-Custom-Header, Authorization',
//             'Content-Type',
//             'application/json;charset=UTF-8',
//             'Transfer-Encoding',
//             'chunked',
//             'Date',
//             'Sat, 19 Oct 2019 04:52:32 GMT' ],
//             trailers: {},
//     rawTrailers: [],
//         upgrade: false,
//         url: '',
//         method: null,
//         statusCode: 200,
//         statusMessage: '',
//         client:
//     TLSSocket {
//         _tlsOptions:
//         { pipe: false,
//             secureContext: [Object],
//             isServer: false,
//             requestCert: true,
//             rejectUnauthorized: true,
//             session: undefined,
//             NPNProtocols: undefined,
//             ALPNProtocols: undefined,
//             requestOCSP: undefined },
//         _secureEstablished: true,
//             _securePending: false,
//             _newSessionPending: false,
//             _controlReleased: true,
//             _SNICallback: null,
//             servername: null,
//             npnProtocol: undefined,
//             alpnProtocol: false,
//             authorized: true,
//             authorizationError: null,
//             encrypted: true,
//             _events:
//         { close: [Array],
//             end: [Array],
//             finish: [Function: onSocketFinish],
//             _socketEnd: [Function: onSocketEnd],
//             secure: [Function],
//                 free: [Function: onFree],
//             agentRemove: [Function: onRemove],
//             drain: [Function: ondrain],
//             error: [Function: socketErrorListener],
//             data: [Function: socketOnData],
//             timeout: [Object] },
//         _eventsCount: 11,
//             connecting: false,
//             _hadError: false,
//             _handle:
//         TLSWrap {
//             _parent: [Object],
//                 _parentWrap: undefined,
//                 _secureContext: [Object],
//                 reading: true,
//                 owner: [Circular],
//                 onread: [Function: onread],
//             writeQueueSize: 0,
//                 onhandshakestart: [Function],
//                 onhandshakedone: [Function],
//                 onocspresponse: [Function],
//                 onerror: [Function] },
//         _parent: null,
//             _host: 'api.apiopen.top',
//             _readableState:
//         ReadableState {
//             objectMode: false,
//                 highWaterMark: 16384,
//                 buffer: [Object],
//                 length: 0,
//                 pipes: null,
//                 pipesCount: 0,
//                 flowing: true,
//                 ended: false,
//                 endEmitted: false,
//                 reading: false,
//                 sync: false,
//                 needReadable: true,
//                 emittedReadable: false,
//                 readableListening: false,
//                 resumeScheduled: false,
//                 destroyed: false,
//                 defaultEncoding: 'utf8',
//                 awaitDrain: 0,
//                 readingMore: false,
//                 decoder: null,
//                 encoding: null },
//         readable: true,
//             domain: null,
//             _maxListeners: undefined,
//             _writableState:
//         WritableState {
//             objectMode: false,
//                 highWaterMark: 16384,
//                 finalCalled: false,
//                 needDrain: false,
//                 ending: false,
//                 ended: false,
//                 finished: false,
//                 destroyed: false,
//                 decodeStrings: false,
//                 defaultEncoding: 'utf8',
//                 length: 0,
//                 writing: false,
//                 corked: 0,
//                 sync: false,
//                 bufferProcessing: false,
//                 onwrite: [Function: bound onwrite],
//             writecb: null,
//                 writelen: 0,
//                 bufferedRequest: null,
//                 lastBufferedRequest: null,
//                 pendingcb: 0,
//                 prefinished: false,
//                 errorEmitted: false,
//                 bufferedRequestCount: 0,
//                 corkedRequestsFree: [Object] },
//         writable: true,
//             allowHalfOpen: false,
//             _bytesDispatched: 269,
//             _sockname: null,
//             _pendingData: null,
//             _pendingEncoding: '',
//             server: undefined,
//             _server: null,
//             ssl:
//         TLSWrap {
//             _parent: [Object],
//                 _parentWrap: undefined,
//                 _secureContext: [Object],
//                 reading: true,
//                 owner: [Circular],
//                 onread: [Function: onread],
//             writeQueueSize: 0,
//                 onhandshakestart: [Function],
//                 onhandshakedone: [Function],
//                 onocspresponse: [Function],
//                 onerror: [Function] },
//         _requestCert: true,
//             _rejectUnauthorized: true,
//             parser:
//         HTTPParser {
//             '0': [Function: parserOnHeaders],
//             '1': [Function: parserOnHeadersComplete],
//             '2': [Function: parserOnBody],
//             '3': [Function: parserOnMessageComplete],
//             '4': null,
//                 _headers: [],
//                 _url: '',
//                 _consumed: false,
//                 socket: [Circular],
//                 incoming: [Circular],
//                 outgoing: [Object],
//                 maxHeaderPairs: 2000,
//                 onIncoming: [Function: parserOnIncomingClient] },
//         _httpMessage:
//             ClientRequest {
//             domain: null,
//                 _events: [Object],
//                 _eventsCount: 3,
//                 _maxListeners: undefined,
//                 output: [],
//                 outputEncodings: [],
//                 outputCallbacks: [],
//                 outputSize: 0,
//                 writable: true,
//                 _last: true,
//                 upgrading: false,
//                 chunkedEncoding: false,
//                 shouldKeepAlive: true,
//                 useChunkedEncodingByDefault: false,
//                 sendDate: false,
//                 _removedConnection: false,
//                 _removedContLen: false,
//                 _removedTE: false,
//                 _contentLength: 0,
//                 _hasBody: true,
//                 _trailer: '',
//                 finished: true,
//                 _headerSent: true,
//                 socket: [Circular],
//                 connection: [Circular],
//                 _header: 'GET /getAllUrl HTTP/1.1\r\nUser-Agent: PostmanRuntime/7.18.0\r
// \nAccept: */*\r\ncache-control: no-cache\r\nPostman-Token: bdeba962-45c2-4cde-a5
//              be-f0ea30af7a6e,dfdea012-c9f3-441c-a8b5-f702f5f22a85\r\nHost: api.apiopen.top\r\
//              nAccept-Encoding: gzip, deflate\r\nConnection: keep-alive\r\n\r\n',
//              _onPendingData: [Function: noopPendingOutput],
//              agent: [Object],
//              socketPath: undefined,
//              timeout: 1500,
//              method: 'GET',
//              path: [Array],
//              _ended: false,
//              res: [Circular],
//              aborted: undefined,
//              timeoutCb: null,
//              upgradeOrConnect: false,
//              parser: [Object],
//              maxHeadersCount: null,
//              [Symbol(outHeadersKey)]: [Object] },
//              read: [Function],
//              _consuming: true,
//              [Symbol(asyncId)]: 7,
//              [Symbol(bytesRead)]: 0 },
//              _consuming: false,
//              _dumped: false,
//              req:
//              ClientRequest {
//              domain: null,
//              _events:
//              { response: [Object],
//              error: [Function],
//              prefinish: [Function: requestOnPrefinish] },
//              _eventsCount: 3,
//              _maxListeners: undefined,
//              output: [],
//              outputEncodings: [],
//              outputCallbacks: [],
//              outputSize: 0,
//              writable: true,
//              _last: true,
//              upgrading: false,
//              chunkedEncoding: false,
//              shouldKeepAlive: true,
//              useChunkedEncodingByDefault: false,
//              sendDate: false,
//              _removedConnection: false,
//              _removedContLen: false,
//              _removedTE: false,
//              _contentLength: 0,
//              _hasBody: true,
//              _trailer: '',
//              finished: true,
//              _headerSent: true,
//              socket:
//              TLSSocket {
//              _tlsOptions: [Object],
//              _secureEstablished: true,
//              _securePending: false,
//              _newSessionPending: false,
//              _controlReleased: true,
//              _SNICallback: null,
//              servername: null,
//              npnProtocol: undefined,
//              alpnProtocol: false,
//              authorized: true,
//              authorizationError: null,
//              encrypted: true,
//              _events: [Object],
//              _eventsCount: 11,
//              connecting: false,
//              _hadError: false,
//              _handle: [Object],
//              _parent: null,
//              _host: 'api.apiopen.top',
//              _readableState: [Object],
//              readable: true,
//              domain: null,
//              _maxListeners: undefined,
//              _writableState: [Object],
//              writable: true,
//              allowHalfOpen: false,
//              _bytesDispatched: 269,
//              _sockname: null,
//              _pendingData: null,
//              _pendingEncoding: '',
//              server: undefined,
//              _server: null,
//              ssl: [Object],
//              _requestCert: true,
//              _rejectUnauthorized: true,
//              parser: [Object],
//              _httpMessage: [Circular],
//              read: [Function],
//              _consuming: true,
//              [Symbol(asyncId)]: 7,
//              [Symbol(bytesRead)]: 0 },
//              connection:
//              TLSSocket {
//              _tlsOptions: [Object],
//              _secureEstablished: true,
//              _securePending: false,
//              _newSessionPending: false,
//              _controlReleased: true,
//              _SNICallback: null,
//              servername: null,
//              npnProtocol: undefined,
//              alpnProtocol: false,
//              authorized: true,
//              authorizationError: null,
//              encrypted: true,
//              _events: [Object],
//              _eventsCount: 11,
//              connecting: false,
//              _hadError: false,
//              _handle: [Object],
//              _parent: null,
//              _host: 'api.apiopen.top',
//              _readableState: [Object],
//              readable: true,
//              domain: null,
//              _maxListeners: undefined,
//              _writableState: [Object],
//              writable: true,
//              allowHalfOpen: false,
//              _bytesDispatched: 269,
//              _sockname: null,
//              _pendingData: null,
//              _pendingEncoding: '',
//              server: undefined,
//              _server: null,
//              ssl: [Object],
//              _requestCert: true,
//              _rejectUnauthorized: true,
//              parser: [Object],
//              _httpMessage: [Circular],
//              read: [Function],
//              _consuming: true,
//              [Symbol(asyncId)]: 7,
//              [Symbol(bytesRead)]: 0 },
//              _header: 'GET /getAllUrl HTTP/1.1\r\nUser-Agent: PostmanRuntime/7.18.0\r\nA
//              ccept: */*\r\ncache-control: no-cache\r\nPostman-Token: bdeba962-45c2-4cde-a5be-
//             f0ea30af7a6e,dfdea012-c9f3-441c-a8b5-f702f5f22a85\r\nHost: api.apiopen.top\r\nAc
//             cept-Encoding: gzip, deflate\r\nConnection: keep-alive\r\n\r\n',
//             _onPendingData: [Function: noopPendingOutput],
//             agent:
//                 Agent {
//                 domain: null,
//                     _events: [Object],
//                     _eventsCount: 1,
//                     _maxListeners: undefined,
//                     defaultPort: 443,
//                     protocol: 'https:',
//                     options: [Object],
//                     requests: {},
//                 sockets: [Object],
//                     freeSockets: {},
//                 keepAliveMsecs: 1000,
//                     keepAlive: false,
//                     maxSockets: Infinity,
//                     maxFreeSockets: 256,
//                     maxCachedSessions: 100,
//                     _sessionCache: [Object] },
//             socketPath: undefined,
//                 timeout: 1500,
//                 method: 'GET',
//                 path: [ '/getAllUrl' ],
//                 _ended: false,
//                 res: [Circular],
//                 aborted: undefined,
//                 timeoutCb: null,
//                 upgradeOrConnect: false,
//                 parser:
//             HTTPParser {
//                 '0': [Function: parserOnHeaders],
//                 '1': [Function: parserOnHeadersComplete],
//                 '2': [Function: parserOnBody],
//                 '3': [Function: parserOnMessageComplete],
//                 '4': null,
//                     _headers: [],
//                     _url: '',
//                     _consumed: false,
//                     socket: [Object],
//                     incoming: [Circular],
//                     outgoing: [Circular],
//                     maxHeaderPairs: 2000,
//                     onIncoming: [Function: parserOnIncomingClient] },
//             maxHeadersCount: null,
//                 [Symbol(outHeadersKey)]:
//             { 'user-agent': [Array],
//                 accept: [Array],
//                 'cache-control': [Array],
//                 'postman-token': [Array],
//                 host: [Array],
//                 'accept-encoding': [Array],
//                 connection: [Array] } } }

//捕获错误
request.on('error',(error) => {
    console.log(error);
})

//把这次请求的过程结束，否则会超时
request.end()
// 未写request.end()会报
// { Error: socket hang up
//     at createHangUpError (_http_client.js:331:15)
//     at TLSSocket.socketOnEnd (_http_client.js:423:23)
//     at emitNone (events.js:111:20)
//     at TLSSocket.emit (events.js:208:7)
//     at endReadableNT (_stream_readable.js:1056:12)
//     at _combinedTickCallback (internal/process/next_tick.js:138:11)
//     at process._tickCallback (internal/process/next_tick.js:180:9) code: 'ECONNR
//     ESET' }
